package com.yitao.cms.constant.order;

import java.util.HashMap;
import java.util.Map;


public class LogisticsKeywordConstant {
    // 采购运输中
    public static final String[] PROCUREMENT = {"已创建", "已确认", "包裹已揽收", "信息已生成", "营业点已装车"};
    // 转运中
    public static final String[] INTRANSIT = {"接收并入库", "已入库", "出库", "发往机场", "运往始发地机场", "包裹到达", "库内操作完成", "已完成打托", "已完成分拣打包"};
    // 国际运输中
    public static final String[] INTERNATIONALCARRIAGE = {"飞往中国", "航班起飞", "到达起运机场", "起飞", "正在中转", "转往目的地", "等待起飞"};
    // 清关中
    public static final String[] CUSTOMSCLEARANCE = {"抵达中国口岸", "待清关", "清关中", "查验中", "落地", "批次清关", "清关中", "转关中", "包裹继续中转", "未提供身份证信息", "未提供身份证图片", "身份证信息有误"};
    // 国内运输中
    public static final String[] DOMESTICINTRANSIT = {"清关已完成", "已收件", "已揽收", "已收取快件", "转运中心", "快件已发往", "快件已到达", "集散中心",
            "已打包", "已发出", "已收入", "快件到达", "快件离开", "快件正送往", "正转运至",
            "待派送", "需加工作日派送", "待工作日派送", "正在派送", "正在派件", "派件中", "正在派件", "客户要求自取",
            "已收寄", "离开", "到达【", "投递", "收寄", "经转", "处理中心", "正在投递"};
    // 签收失败
    public static final String[] SIGNFAIL = {"失败签收", "派件不成功", "派送不成功", "未妥投", "待与收件人再次联系"};
    // 已签收
    public static final String[] HAVEBEENSIGNED = {"已签收", "领取成功", "查看签收", "感谢使用", "及时取件", "快递柜", "感谢",
            "邮件投递到", "代收", "已妥投", "收件人已取走", "邮件已放入", "他人收"};
    // 已取消
    public static final String[] CANCELED = {"已取消"};


    /**
     * 是 1  否 0
     */
    public enum ExpressCodeEnum {

        YYOX(0, "邮客全球速递", "yyox"),
        DISIFANG(1, "递四方", "disifang"),
        AOTIAN(2, "ATS傲天转运", "aotian"),
        rests(-1, "其他", "qita");

        private static final Map<Integer, ExpressCodeEnum> map = new HashMap<>();

        static {
            ExpressCodeEnum[] values = ExpressCodeEnum.values();
            for (ExpressCodeEnum index : values) {
                map.put(index.code, index);
            }
        }

        private final Integer code;
        private final String name;
        private final String nameCode;

        private ExpressCodeEnum(Integer code, String name, String nameCode) {
            this.code = code;
            this.name = name;
            this.nameCode = nameCode;

        }

        public static ExpressCodeEnum getEnum(Integer code) {
            return map.get(code);
        }

        public Integer getCode() {
            return code;
        }

        public String getName() {
            return name;
        }

        public String getNameCode() {
            return nameCode;
        }}


}
